package main

import "fmt"

type Parent struct {
	Name string
}

func (cls *Parent) SetName(value string) {
	cls.Name = value
}

type component struct {
	Running bool
}

type Child struct {
	Parent
	C component
}

type Tag struct {
	int
	string
}

func (t *Tag) String() string{
	return fmt.Sprintf("%d-%s", t.int, t.string)
}

func main() {
	obj := &Child{}
	obj.SetName("king")
	fmt.Println(obj.Name)
	fmt.Println(obj.C.Running)
	tag := &Tag{1, "one"}
	fmt.Println(tag)
}
